Add silent mode to examples Makefiles
[lttng-ust.git] / doc / examples / gen-tp / Makefile
index 664372f214e0f594afd015e2e023edbd5483de74..bc172f0ccefbd08830f05a81b225e9594bb72969 100644 (file)
 # Permission to modify the code and to distribute modified code is
 # granted, provided the above notices are retained, and a notice that
 # the code was modified is included with the above copyright notice.
-
+#
 # This makefile is not using automake so that people can see how to make
 # simply. It builds a program with a statically embedded tracepoint
 # provider probe.
+#
+# This makefile is purposefully kept simple to support GNU and BSD make.
 
-CC = gcc
-LIBS = -ldl -llttng-ust
+LIBS = -ldl -llttng-ust                #On Linux
+#LIBS = -lc -llttng-ust                #On BSD
+AM_V_P := :
 
 all: sample
 
-sample: sample.o sample-tp.o
-       $(CC) $(LIBS) -o $@ $^
+sample: sample.o sample_tracepoint.o
+       @if $(AM_V_P); then set -x; else echo "  CCLD     $@"; fi; \
+               $(CC) $(LDFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) $(CFLAGS) \
+               -o $@ sample.o sample_tracepoint.o $(LIBS)
 
 sample.o: sample.c sample_tracepoint.h
-       $(CC) $(CFLAGS) -c -o $@ $<
+       @if $(AM_V_P); then set -x; else echo "  CC       $@"; fi; \
+               $(CC) $(CPPFLAGS) $(AM_CFLAGS) $(AM_CPPFLAGS) $(CFLAGS) \
+               -c -o $@ $<
 
-sample-tp.o: sample_tracepoint.c sample_tracepoint.h
-       $(CC) $(CFLAGS) -I. -c -o $@ $<
+# Use this command to compile the .c manually
+#sample_tracepoint.o: sample_tracepoint.c sample_tracepoint.h
+#      $(CC) $(CPPFLAGS) $(AM_CFLAGS) $(AM_CPPFLAGS) $(CFLAGS) \
+#              -I. -c -o $@ $<
+
+# This rule generate .o only and depends on rules for generating
+# the .h and .c
+%.o: %.tp %.c %.h
+       @if $(AM_V_P); then set -x; else echo "  CC       $@"; fi; \
+               CPPFLAGS="$(AM_CPPFLAGS) $(CPPFLAGS)" \
+               CFLAGS="$(AM_CFLAGS) $(CFLAGS)" \
+               LDFLAGS="$(AM_LDFLAGS) $(LDFLAGS)" \
+               CC="$(CC)" \
+               $(LTTNG_GEN_TP_PATH)lttng-gen-tp -o $@ $<
+
+# The following rule can be used to generate all files instead of having one
+# for each file type. Note that the sample.o has a dependency on the
+# .h, so you need to change that if you remove the %.h rule.
+#%.o: %.tp
+#      lttng-gen-tp $<
 
 %.h: %.tp
-       lttng-gen-tp -o $@ $<
+       @if $(AM_V_P); then set -x; else echo "  GEN      $@"; fi; \
+               $(LTTNG_GEN_TP_PATH)lttng-gen-tp -o $@ $<
+
 %.c: %.tp
-       lttng-gen-tp -o $@ $<
+       @if $(AM_V_P); then set -x; else echo "  GEN      $@"; fi; \
+               $(LTTNG_GEN_TP_PATH)lttng-gen-tp -o $@ $<
 
 .PHONY: clean
 clean:
This page took 0.02631 seconds and 4 git commands to generate.