Select which binaries/extras to build at configure time
[lttng-tools.git] / src / common / Makefile.am
index 5d79210b802819cd07e14e5b11338c16acfdca09..148130177f177d2be79fd0e99c638d64b3da6b54 100644 (file)
@@ -1,27 +1,94 @@
-AM_CPPFLAGS =
+AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src
 
-SUBDIRS = compat hashtable kernel-ctl sessiond-comm kernel-consumer ust-consumer
+AUTOMAKE_OPTIONS = subdir-objects
 
-AM_CFLAGS = -fno-strict-aliasing
+SUBDIRS =
 
-noinst_HEADERS = lttng-kernel.h defaults.h macros.h error.h
+# Make sure to always distribute all folders
+# since SUBDIRS is decided at configure time.
+DIST_SUBDIRS = compat health hashtable kernel-ctl sessiond-comm relayd \
+         kernel-consumer ust-consumer testpoint index config consumer
 
-noinst_LTLIBRARIES = libcommon.la
+if BUILD_LIB_COMPAT
+SUBDIRS += compat
+endif
+
+if BUILD_LIB_HEALTH
+SUBDIRS += health
+endif
+
+if BUILD_LIB_HASHTABLE
+SUBDIRS += hashtable
+endif
+
+if BUILD_LIB_KERNEL_CTL
+SUBDIRS += kernel-ctl
+endif
+
+if BUILD_LIB_SESSIOND_COMM
+SUBDIRS += sessiond-comm
+endif
+
+if BUILD_LIB_RELAYD
+SUBDIRS += relayd
+endif
+
+if BUILD_LIB_KERNEL_CONSUMER
+SUBDIRS += kernel-consumer
+endif
 
-libcommon_la_SOURCES = runas.c runas.h common.h
+if BUILD_LIB_UST_CONSUMER
+SUBDIRS += ust-consumer
+endif
 
-# Consumer library
-noinst_LTLIBRARIES += libconsumer.la
+if BUILD_LIB_TESTPOINT
+SUBDIRS += testpoint
+endif
 
-libconsumer_la_SOURCES = consumer.c consumer.h
+if BUILD_LIB_INDEX
+SUBDIRS += index
+endif
 
-libconsumer_la_LIBADD = \
-               $(top_builddir)/src/common/sessiond-comm/libsessiond-comm.la \
-               $(top_builddir)/src/common/kernel-consumer/libkernel-consumer.la \
-               $(top_builddir)/src/common/hashtable/libhashtable.la \
-               $(top_builddir)/src/common/compat/libcompat.la
+if BUILD_LIB_CONFIG
+SUBDIRS += config
+endif
 
-if HAVE_LIBLTTNG_UST_CTL
-libconsumer_la_LIBADD += \
-               $(top_builddir)/src/common/ust-consumer/libust-consumer.la
+if BUILD_LIB_CONSUMER
+SUBDIRS += consumer
 endif
+
+AM_CFLAGS = -fno-strict-aliasing
+
+noinst_HEADERS = lttng-kernel.h defaults.h macros.h error.h futex.h \
+                                uri.h utils.h lttng-kernel-old.h \
+                                align.h bitfield.h bug.h
+
+# Common library
+noinst_LTLIBRARIES = libcommon.la
+EXTRA_DIST = mi_lttng.xsd
+
+libcommon_la_SOURCES = error.h error.c utils.c utils.h runas.c runas.h \
+                       common.h futex.c futex.h uri.c uri.h defaults.c \
+                       pipe.c pipe.h readwrite.c readwrite.h \
+                       mi-lttng.h mi-lttng.c \
+                       daemonize.c daemonize.h \
+                       sessiond-comm/unix.c sessiond-comm/unix.h
+
+libcommon_la_LIBADD = \
+               -luuid \
+               -lrt \
+               $(top_builddir)/src/common/config/libconfig.la
+
+all-local:
+       @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
+               for script in $(EXTRA_DIST); do \
+               cp -f $(srcdir)/$$script $(builddir); \
+               done; \
+       fi
+
+clean-local:
+       @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
+               for script in $(EXTRA_DIST); do \
+               rm -f $(builddir)/$$script; \
+               done; \
+       fi
This page took 0.026216 seconds and 5 git commands to generate.