76 lines
1.7 KiB
Makefile
76 lines
1.7 KiB
Makefile
# SPDX-License-Identifier: LGPL-2.1
|
|
|
|
#
|
|
# The samples are pulled out of the examples used in the man pages
|
|
# that are located in the Documentation directory.
|
|
#
|
|
|
|
include $(src)/scripts/utils.mk
|
|
|
|
EXAMPLES :=
|
|
EXAMPLES += dynevents
|
|
EXAMPLES += kprobes
|
|
EXAMPLES += eprobes
|
|
EXAMPLES += uprobes
|
|
EXAMPLES += synth
|
|
EXAMPLES += error
|
|
EXAMPLES += filter
|
|
EXAMPLES += function-filter
|
|
EXAMPLES += hist
|
|
EXAMPLES += hist-cont
|
|
EXAMPLES += tracer
|
|
EXAMPLES += stream
|
|
EXAMPLES += instances-affinity
|
|
EXAMPLES += cpu
|
|
|
|
TARGETS :=
|
|
TARGETS += sqlhist
|
|
TARGETS += $(EXAMPLES)
|
|
|
|
sdir := $(obj)/bin
|
|
|
|
TARGETS := $(patsubst %,$(sdir)/%,$(TARGETS))
|
|
|
|
all: $(TARGETS)
|
|
|
|
$(bdir)/sqlhist.c: $(src)/Documentation/libtracefs-sql.txt
|
|
$(call extract_example,$<,$@)
|
|
|
|
$(bdir)/%.c: ../Documentation/libtracefs-%.txt
|
|
$(call extract_example,$<,$@)
|
|
|
|
$(sdir):
|
|
@mkdir -p $(sdir)
|
|
|
|
sqlhist: $(sdir)/sqlhist
|
|
|
|
$(TARGETS): $(sdir)
|
|
|
|
# sqlhist is unique and stands on its own
|
|
$(sdir)/sqlhist: $(bdir)/sqlhist.c $(LIBTRACEFS_STATIC)
|
|
$(call do_sample_build,$@,$<)
|
|
|
|
$(sdir)/%: $(bdir)/%.o
|
|
$(call do_sample_build,$@,$<)
|
|
|
|
$(EXAMPLES): $(patsubst %,$(sdir)/%,$(TARGETS))
|
|
|
|
## The intermediate files get removed by Make.
|
|
## To examine the .c files created by one of the man pages,
|
|
## uncomment the below, and replace the XX with the exec example
|
|
## name, and the file will not be discarded by make.
|
|
#
|
|
# $(bdir)/XX.o: $(bdir)/XX.c
|
|
# $(CC) -g -Wall $(CFLAGS) -c -o $@ $^ -I../include/ $(LIBTRACEEVENT_INCLUDES)
|
|
|
|
$(bdir)/%.o: $(bdir)/%.c
|
|
$(call do_sample_obj,$@,$^)
|
|
|
|
$(bdir)/XX.o: $(bdir)/hist.c
|
|
$(CC) -g -Wall $(CFLAGS) -c -o $@ $^ -I../include/ $(LIBTRACEEVENT_INCLUDES)
|
|
|
|
clean:
|
|
$(Q)$(call do_clean,$(sdir)/* $(bdir)/sqlhist.c $(bdir)/sqlhist.o)
|
|
|
|
.PHONY: sqlhist
|