# 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
all: sample
sample: sample.o sample_tracepoint.o
- $(CC) $(LIBS) -o $@ $^
+ $(CC) $(LDFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(AM_CFLAGS) \
+ -o $@ $(LIBS) sample.o sample_tracepoint.o
sample.o: sample.c sample_tracepoint.h
- $(CC) $(CFLAGS) -c -o $@ $<
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(AM_CPPFLAGS) $(AM_CFLAGS) \
+ -c -o $@ $<
# Use this command to compile the .c manually
#sample_tracepoint.o: sample_tracepoint.c sample_tracepoint.h
-# $(CC) $(CFLAGS) -I. -c -o $@ $<
+# $(CC) $(CPPFLAGS) $(CFLAGS) $(AM_CPPFLAGS) $(AM_CFLAGS) \
+# -I. -c -o $@ $<
# This rule generate .o only and depends on rules for generating
# the .h and .c
%.o: %.tp %.c %.h
- lttng-gen-tp -o $@ $<
+ $(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
# lttng-gen-tp $<
%.h: %.tp
- lttng-gen-tp -o $@ $<
+ $(LTTNG_GEN_TP_PATH)lttng-gen-tp -o $@ $<
%.c: %.tp
- lttng-gen-tp -o $@ $<
+ $(LTTNG_GEN_TP_PATH)lttng-gen-tp -o $@ $<
.PHONY: clean
clean: