1 # Copyright (C) 2020 Jérémie Galarneau <jeremie.galarneau@efficios.com>
3 # THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
4 # OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
6 # Permission is hereby granted to use or copy this program for any
7 # purpose, provided the above notices are retained on all copies.
8 # Permission to modify the code and to distribute modified code is
9 # granted, provided the above notices are retained, and a notice that
10 # the code was modified is included with the above copyright notice.
12 # This Makefile is not using automake so that users may see how to build
13 # a program with tracepoint provider probes compiled as static libraries.
15 # This makefile is purposefully kept simple to support GNU and BSD make.
18 LIBS_INSTRUMENTED_APP
= -ldl
-llttng-ust
19 LIBS_NOTIFICATION_CLIENT
= -ldl
-llttng-ctl
23 all: instrumented-app notification-client
25 tracepoint-trigger-example.o
: tracepoint-trigger-example.c tracepoint-trigger-example.h
26 @if
$(AM_V_P
); then set
-x
; else echo
" CC $@"; fi
; \
27 $(CC
) $(CPPFLAGS
) $(LOCAL_CPPFLAGS
) $(AM_CFLAGS
) $(AM_CPPFLAGS
) \
30 tracepoint-trigger-example.a
: tracepoint-trigger-example.o
31 @if
$(AM_V_P
); then set
-x
; else echo
" AR $@"; fi
; \
32 $(AR
) -rc
$@ tracepoint-trigger-example.o
34 instrumented-app.o
: instrumented-app.c
35 @if
$(AM_V_P
); then set
-x
; else echo
" CC $@"; fi
; \
36 $(CC
) $(CPPFLAGS
) $(LOCAL_CPPFLAGS
) $(AM_CFLAGS
) $(AM_CPPFLAGS
) \
39 instrumented-app
: instrumented-app.o tracepoint-trigger-example.a
40 @if
$(AM_V_P
); then set
-x
; else echo
" CCLD $@"; fi
; \
41 $(CC
) -o
$@
$(LDFLAGS
) $(CPPFLAGS
) $(AM_LDFLAGS
) $(AM_CFLAGS
) \
42 $(CFLAGS
) instrumented-app.o tracepoint-trigger-example.a
$(LIBS_INSTRUMENTED_APP
)
44 notification-client.o
: notification-client.c
45 @if
$(AM_V_P
); then set
-x
; else echo
" CC $@"; fi
; \
46 $(CC
) $(CPPFLAGS
) $(LOCAL_CPPFLAGS
) $(AM_CFLAGS
) $(AM_CPPFLAGS
) \
49 notification-client
: notification-client.o
50 @if
$(AM_V_P
); then set
-x
; else echo
" CCLD $@"; fi
; \
51 $(CC
) -o
$@
$(LDFLAGS
) $(CPPFLAGS
) $(AM_LDFLAGS
) $(AM_CFLAGS
) \
52 $(CFLAGS
) notification-client.o tracepoint-trigger-example.a
$(LIBS_NOTIFICATION_CLIENT
)
56 rm -f
*.o
*.a instrumented-app notification-client