+# SPDX-License-Identifier: GPL-2.0-only
+
lttng.i: lttng.i.in
- sed "s/LTTNG_VERSION_STR/LTTng $(PACKAGE_VERSION)/g" <lttng.i.in >lttng.i
+ $(SED) "s/LTTNG_VERSION_STR/LTTng $(PACKAGE_VERSION)/g" < $(srcdir)/lttng.i.in >lttng.i
+
+# Some versions of SWIG (like 3.0.12) generate code where a parameter called
+# `swig_this` shadows a global of the same name. Later versions (like 4.0.1)
+# have renamed this global to `Swig_This_global`.
+#
+# Disable -Wshadow for that file.
+AM_CFLAGS += -Wno-shadow
+
+AM_CFLAGS += -Wno-missing-field-initializers
-AM_CFLAGS = -I$(PYTHON_INCLUDE) -I$(top_srcdir)/lib/lttng-ctl -I../common \
- $(BUDDY_CFLAGS)
+AM_CPPFLAGS += $(PYTHON_INCLUDE)
-EXTRA_DIST = lttng.i
-python_PYTHON = lttng.py
+EXTRA_DIST = lttng.i.in
+nodist_python_PYTHON = lttng.py
pyexec_LTLIBRARIES = _lttng.la
MAINTAINERCLEANFILES = lttng_wrap.c lttng.py
-_lttng_la_SOURCES = lttng_wrap.c
-
+nodist__lttng_la_SOURCES = lttng_wrap.c
_lttng_la_LDFLAGS = -module
+_lttng_la_LIBADD = $(top_builddir)/src/lib/lttng-ctl/liblttng-ctl.la \
+ $(top_builddir)/src/common/libsessiond-comm.la \
+ $(top_builddir)/src/common/libcommon-gpl.la
-_lttng_la_LIBADD = $(top_srcdir)/src/lib/lttng-ctl/liblttng-ctl.la \
- $(top_srcdir)/src/common/sessiond-comm/libsessiond-comm.la
-
-# SWIG 'warning md variable unused' fixed after SWIG build:
lttng_wrap.c: lttng.i
$(SWIG) -python -I. -I$(top_srcdir)/src/common/sessiond-comm lttng.i
- sed -i "s/PyObject \*m, \*d, \*md;/PyObject \*m, \*d;\n#if defined(SWIGPYTHON_BUILTIN)\nPyObject *md;\n#endif/g" lttng_wrap.c
- sed -i "s/md = d/d/g" lttng_wrap.c
- sed -i "s/(void)public_symbol;/(void)public_symbol;\n md = d;/g" lttng_wrap.c
-CLEANFILES = lttng.i lttng.py lttng_wrap.c
+CLEANFILES = lttng.i lttng.py lttng_wrap.c lttng.pyc