aboutsummaryrefslogtreecommitdiffstats
path: root/src/Makefile.am
diff options
context:
space:
mode:
authorHarald Welte <laforge@osmocom.org>2020-09-26 11:51:32 +0200
committerlaforge <laforge@osmocom.org>2021-02-03 13:55:40 +0000
commit433005c87c88912358bfd02d4b0d997b52b04013 (patch)
treed5f71f3faff20b53daf14a4975b33b3284babe1d /src/Makefile.am
parentdc43f7d3c73dc4cbe4e94668c635f056756f6d8a (diff)
initial support for static userspace probes via systemtap
This adds a --enable-systemtap configure option, which will then add static tracepoints to the generated libosmocore binary. At this point, only two tracepoints are supported: log_start and log_done. They can be used to trace the amount of time a libosmocore-using application spends in potentiall blocking calls to log to stderr or to files. Related: OS#4311 Change-Id: I7e1ab664241deb524c9582cbd1bec31af46c747e
Diffstat (limited to 'src/Makefile.am')
-rw-r--r--src/Makefile.am12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index dd31db88..a2566a33 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -29,6 +29,7 @@ libosmocore_la_SOURCES = context.c timer.c timer_gettimeofday.c timer_clockgetti
use_count.c \
exec.c \
it_q.c \
+ probes.d \
$(NULL)
if HAVE_SSSE3
@@ -82,5 +83,16 @@ libosmocore_la_SOURCES += mnl.c
libosmocore_la_LIBADD += $(LIBMNL_LIBS)
endif
+if ENABLE_SYSTEMTAP
+probes.h: probes.d
+ $(DTRACE) -C -h -s $< -o $@
+
+probes.lo: probes.d
+ $(LIBTOOL) --mode=compile $(AM_V_lt) --tag=CC env CFLAGS="$(CFLAGS)" $(DTRACE) -C -G -s $< -o $@
+
+BUILT_SOURCES += probes.h probes.lo
+libosmocore_la_LIBADD += probes.lo
+endif
+
crc%gen.c: crcXXgen.c.tpl
$(AM_V_GEN)sed -e's/XX/$*/g' $< > $@