From 885078d1004705e79400e109dc7cf9620cafcc4e Mon Sep 17 00:00:00 2001 From: Christophe Bedard Date: Tue, 23 Jan 2024 14:52:55 -0800 Subject: [PATCH] configure.ac: introduce --{disable,enable}-lib-lttng-ctl MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The goal is to be able to only build liblttng-ctl, for example without needing to build bin/lttng. Since liblttng-ctl is required when building some of the binaries, ./configure will fail if --disabled (explicitly) unless those binaries are --disabled too. Previously, the following would result in liblttng-ctl not getting built, but it now gets built by default: ./configure \ --disable-bin-lttng \ --disable-bin-lttng-relayd \ --disable-bin-lttng-sessiond Change-Id: I9338c46e64c031360aa762a3ce891511a3dbba39 Signed-off-by: Christophe Bedard Signed-off-by: Jérémie Galarneau --- configure.ac | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/configure.ac b/configure.ac index 3c3b2f39b..836ff15b8 100644 --- a/configure.ac +++ b/configure.ac @@ -953,6 +953,9 @@ AS_IF([test "$test_sdt_uprobe" = "autodetect"], [ AM_CONDITIONAL([TEST_SDT_UPROBE], [test "$test_sdt_uprobe" = "yes"]) +AC_ARG_ENABLE([lib-lttng-ctl], AS_HELP_STRING([--disable-lib-lttng-ctl], + [Disable the build of liblttng-ctl (only possible if no binaries that depend on it are built)])) + # Arguments for binaries build exclusion AC_ARG_ENABLE([bin-lttng], AS_HELP_STRING([--disable-bin-lttng],[Disable the build of lttng binaries])) AC_ARG_ENABLE([bin-lttng-consumerd], AS_HELP_STRING([--disable-bin-lttng-consumerd], @@ -1023,11 +1026,23 @@ AS_IF([test x$enable_bin_lttng_sessiond != xno], ) # Libraries dependencies enabling +# If we want to build liblttng-ctl +AS_IF([test x$enable_lib_lttng_ctl != xno], + [ + build_lib_lttng_ctl=yes + ] +) +# If we need to build liblttng-ctl because a binary depends on it AS_IF([test x$build_lib_lttng_ctl = xyes], [ build_lib_sessiond_comm=yes ] ) +# Fail if we didn't want to build liblttng-ctl but need to build it anyway +AS_IF([test "x$build_lib_lttng_ctl" = "xyes" -a "x$enable_lib_lttng_ctl" = "xno"],[ + AC_MSG_FAILURE( + [liblttng-ctl must be built, because at least one binary that depends on it is enabled]) +]) AS_IF([test x$build_lib_consumer = xyes], [ @@ -1347,6 +1362,13 @@ PPRINT_PROP_BOOL([libkmod support], $value) test "x$with_lttng_ust" = "xyes" && value=1 || value=0 PPRINT_PROP_BOOL([LTTng-UST support], $value) +AS_ECHO +PPRINT_SUBTITLE([Libraries]) + +# liblttng-ctl enabled/disabled +test x$build_lib_lttng_ctl != xno && value=1 || value=0 +PPRINT_PROP_BOOL([liblttng-ctl], $value) + AS_ECHO PPRINT_SUBTITLE([Binaries]) -- 2.34.1