From 63fae78781b6f55b7345aa018250bf92834460e5 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Mon, 5 Nov 2012 10:36:14 -0500 Subject: [PATCH] Fix: Conditionally disable tests requiring shared libs support When building lttng-ust with shared library support explicitly disabled (e.g.: ./configure --disable-shared), libtool fail with a fatal error: CC tp.lo CC tp2.lo CCLD liblttng-ust-provider-ust-tests-demo.la libtool: link: can not build a shared library libtool: link: See the libtool documentation for more information. libtool: link: Fatal configuration error. The build should not fail because some tests require explicit shared library support, instead they should be skipped. This patch detect that the --disable-shared flag was passed to the configure script and toggle the "NO_SHARED" Automake variable. Thus, the tests that require explicit shared library support can be skipped when the NO_SHARED variable is true. [ Edit by Mathieu Desnoyers: add "" in configure.ac to follow the local coding style. ] Signed-off-by: Christian Babeux Signed-off-by: Mathieu Desnoyers --- configure.ac | 2 ++ tests/demo/Makefile.am | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/configure.ac b/configure.ac index 39530db4..b8b23d21 100644 --- a/configure.ac +++ b/configure.ac @@ -64,6 +64,8 @@ AS_IF([test "x$libtool_fixup" = "xyes"], ]) ]) +AM_CONDITIONAL([NO_SHARED], [test "x$enable_shared" = "xno"]) + # Checks for programs. AC_PROG_CC AC_PROG_CXX diff --git a/tests/demo/Makefile.am b/tests/demo/Makefile.am index 04b6e8c9..5adafdc5 100644 --- a/tests/demo/Makefile.am +++ b/tests/demo/Makefile.am @@ -6,6 +6,10 @@ AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include -Wsystem-headers # libraries. LIBS = +if NO_SHARED +# Do not build this test if shared libraries support was +# explicitly disabled. +else # Force the shared flag on the noinst libraries since they are # only built static by default FORCE_SHARED_LIB_OPTIONS = -module -shared -avoid-version \ @@ -35,3 +39,4 @@ noinst_PROGRAMS = demo demo_SOURCES = demo.c ust_tests_demo.h # The demo program only depends on libdl. demo_LDFLAGS = -ldl +endif -- 2.34.1