Move utils_expand_path and utils_expand_path_keep_symlink to libpath.la
[lttng-tools.git] / src / common / Makefile.am
index 16e9e548b2a97ca747a3ce4170425f315db0bbf2..1ac4874a02a5f50589a11e7a309167aef0dec50e 100644 (file)
+# SPDX-License-Identifier: GPL-2.0-only
+
 AUTOMAKE_OPTIONS = subdir-objects
 
-SUBDIRS = string-utils
+SUBDIRS = \
+       argpar \
+       bytecode \
+       compat \
+       config \
+       ini-config \
+       fd-tracker \
+       string-utils \
+       filter \
+       hashtable \
+       argpar-utils
 
 # 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 \
-         string-utils
-#
+DIST_SUBDIRS = \
+       compat \
+       health \
+       hashtable \
+       kernel-ctl \
+       sessiond-comm \
+       relayd \
+       kernel-consumer \
+       ust-consumer \
+       testpoint \
+       index \
+       config \
+       ini-config \
+       consumer \
+       string-utils \
+       fd-tracker \
+       bytecode \
+       filter \
+       argpar \
+       argpar-utils
+
 # Common library
-noinst_LTLIBRARIES = libcommon.la
-EXTRA_DIST = mi-lttng-3.0.xsd
-
-libcommon_la_SOURCES = error.h error.c utils.c utils.h runas.h runas.c \
-                       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 \
-                       unix.c unix.h \
-                       filter.c filter.h context.c context.h \
-                       action.c notify.c condition.c buffer-usage.c \
-                       session-consumed-size.c \
-                       session-rotation.c \
-                       evaluation.c notification.c trigger.c endpoint.c \
-                       dynamic-buffer.h dynamic-buffer.c \
-                       buffer-view.h buffer-view.c \
-                       location.c \
-                       waiter.h waiter.c \
-                       userspace-probe.c event.c time.c
+noinst_LTLIBRARIES = libpath.la libcommon-lgpl.la libcommon-gpl.la
+EXTRA_DIST = mi-lttng-4.1.xsd
+
+# The libcommon-lgpl static archive contains only LGPLv2.1 code. It is
+# meant to be used by LGPLv2.1 libraries such as liblttng-ctl. It also
+# contains libcommon-lgpl.la.
+
+libcommon_lgpl_la_SOURCES = \
+       actions/action.cpp \
+       actions/list.cpp \
+       actions/notify.cpp \
+       actions/path.cpp \
+       actions/rotate-session.cpp \
+       actions/snapshot-session.cpp \
+       actions/start-session.cpp \
+       actions/stop-session.cpp \
+       actions/rate-policy.cpp \
+       buffer-view.h buffer-view.cpp \
+       conditions/buffer-usage.cpp \
+       conditions/condition.cpp \
+       conditions/event-rule-matches.cpp \
+       conditions/session-consumed-size.cpp \
+       conditions/session-rotation.cpp \
+       credentials.cpp credentials.h \
+       defaults.cpp \
+       domain.cpp \
+       dynamic-array.cpp dynamic-array.h \
+       dynamic-buffer.cpp dynamic-buffer.h \
+       endpoint.cpp \
+       error.cpp error.h \
+       error-query.cpp \
+       evaluation.cpp \
+       event-expr/event-expr.cpp \
+       event-field-value.cpp \
+       event-rule/event-rule.cpp \
+       event-rule/kernel-kprobe.cpp \
+       event-rule/kernel-syscall.cpp \
+       event-rule/kernel-uprobe.cpp \
+       event-rule/kernel-tracepoint.cpp \
+       event-rule/user-tracepoint.cpp \
+       event-rule/log4j-logging.cpp \
+       event-rule/jul-logging.cpp \
+       event-rule/python-logging.cpp \
+       fd-handle.cpp fd-handle.h \
+       kernel-probe.cpp \
+       location.cpp \
+       log-level-rule.cpp \
+       mi-lttng.cpp mi-lttng.h \
+       notification.cpp \
+       payload.cpp payload.h \
+       payload-view.cpp payload-view.h \
+       readwrite.cpp readwrite.h \
+       runas.cpp runas.h \
+       session-descriptor.cpp \
+       snapshot.cpp snapshot.h \
+       spawn-viewer.cpp spawn-viewer.h \
+       thread.cpp thread.h \
+       time.cpp \
+       tracker.cpp tracker.h \
+       trigger.cpp \
+       unix.cpp unix.h \
+       uri.cpp uri.h \
+       userspace-probe.cpp \
+       utils.cpp utils.h
 
 if HAVE_ELF_H
-libcommon_la_SOURCES += lttng-elf.h lttng-elf.c
+libcommon_lgpl_la_SOURCES += \
+       lttng-elf.cpp lttng-elf.h
 endif
 
-libcommon_la_LIBADD = \
-               $(top_builddir)/src/common/config/libconfig.la \
-               $(UUID_LIBS)
-
-if BUILD_LIB_COMPAT
-SUBDIRS += compat
-endif
+libcommon_lgpl_la_LIBADD = \
+       $(top_builddir)/src/common/bytecode/libbytecode.la \
+       $(top_builddir)/src/common/compat/libcompat.la \
+       $(top_builddir)/src/common/config/libconfig.la \
+       $(top_builddir)/src/common/filter/libfilter.la \
+       $(top_builddir)/src/common/hashtable/libhashtable-lgpl.la \
+       $(top_builddir)/src/vendor/msgpack/libmsgpack.la
+
+# The libpath static archive contains GPLv2 compatible code. It is
+# meant to be used by GPL executables.
+
+libpath_la_SOURCES = \
+       path.cpp path.h
+
+# The libcommon-gpl static archive contains GPLv2 compatible code. It is
+# meant to be used by GPL executables.
+
+libcommon_gpl_la_SOURCES = \
+       common.h \
+       context.cpp context.h \
+       daemonize.cpp daemonize.h \
+       event.cpp \
+       filter.cpp filter.h \
+       fs-handle.cpp fs-handle.h fs-handle-internal.h \
+       futex.cpp futex.h \
+       index-allocator.cpp index-allocator.h \
+       optional.h \
+       pipe.cpp pipe.h \
+       shm.cpp shm.h \
+       trace-chunk.cpp trace-chunk.h \
+       trace-chunk-registry.h \
+       uuid.cpp uuid.h \
+       waiter.cpp waiter.h
+
+libcommon_gpl_la_LIBADD = \
+       libcommon-lgpl.la \
+       libpath.la \
+       $(top_builddir)/src/common/ini-config/libini-config.la \
+       $(top_builddir)/src/common/hashtable/libhashtable-gpl.la \
+       $(top_builddir)/src/common/fd-tracker/libfd-tracker.la
 
 if BUILD_LIB_HEALTH
 SUBDIRS += health
 endif
 
-if BUILD_LIB_HASHTABLE
-SUBDIRS += hashtable
-endif
-
 if BUILD_LIB_KERNEL_CTL
 SUBDIRS += kernel-ctl
 endif
@@ -61,6 +165,7 @@ if BUILD_LIB_RELAYD
 SUBDIRS += relayd
 endif
 
+
 if BUILD_LIB_KERNEL_CONSUMER
 SUBDIRS += kernel-consumer
 endif
@@ -77,17 +182,26 @@ if BUILD_LIB_INDEX
 SUBDIRS += index
 endif
 
-if BUILD_LIB_CONFIG
-SUBDIRS += config
-endif
-
 if BUILD_LIB_CONSUMER
 SUBDIRS += consumer
 endif
 
-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 time.h
+noinst_HEADERS = \
+       align.h \
+       bug.h \
+       defaults.h \
+       error.h \
+       futex.h \
+       lttng-kernel.h \
+       lttng-kernel-old.h \
+       macros.h \
+       time.h \
+       uri.h \
+       utils.h
+
+noinst_PROGRAMS = filter-grammar-test
+filter_grammar_test_SOURCES = filter-grammar-test.cpp
+filter_grammar_test_LDADD = libcommon-gpl.la
 
 all-local:
        @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
This page took 0.025073 seconds and 4 git commands to generate.