Introduce libcommon-lgpl for liblttng-ctl
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Tue, 11 Jan 2022 20:57:37 +0000 (15:57 -0500)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Sat, 22 Jan 2022 00:38:32 +0000 (19:38 -0500)
commita878d96125906e6660e6ef3d1f970c13a4e22fbd
tree8d1949837bb7dd0da5eb7b230d5e1e0ab27c902f
parente5b05ab3d0b711701109678ce8570250d199d9b9
Introduce libcommon-lgpl for liblttng-ctl

liblttng-ctl is a LGPLv2.1 library should should not use GPLv2 code.
Introduce libcommon-lgpl as a static archive containing only LGPLv2.1
compatible code.

This also removes the dependency from liblttng-ctl to liburcu.

Include some source files in libcommon-lgpl.a which are indirectly needed
by source files required in libcommon-lgpl.a:

- endpoint.cpp,
- lttng-elf.cpp,
- lttng-elf.h.

Include some source files in libcommon-lgpl.a which are only needed to
link the lttng executable:

- domain.cpp,
- spawn-viewer.cpp, spawn-viewer.h.

Introduce the new source file hashtable/seed.cpp to move the
lttng_ht_seed symbol in a source file which does not require
liburcu-cds, so it can be present in libcommon-lgpl. This allows
building compile units which are needed in the lgpl common library which
also contain functions which directly refer to lttng_ht_seed.

Programs and libraries which use libhashtable.la are changed to use
libcommon-gpl.la instead. libhashtable becomes internal to libcommon.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Change-Id: I27d2acb823a6d951692a5da88ce32bbe6bafb072
14 files changed:
src/bin/lttng-consumerd/Makefile.am
src/bin/lttng-relayd/Makefile.am
src/bin/lttng-sessiond/Makefile.am
src/common/Makefile.am
src/common/consumer/Makefile.am
src/common/hashtable/Makefile.am
src/common/hashtable/hashtable.c
src/common/hashtable/seed.c [new file with mode: 0644]
src/common/kernel-consumer/Makefile.am
src/common/ust-consumer/Makefile.am
src/lib/lttng-ctl/Makefile.am
tests/regression/tools/live/Makefile.am
tests/unit/Makefile.am
tests/unit/ini_config/Makefile.am
This page took 0.030508 seconds and 5 git commands to generate.